package dingding.entity;

public class RecordResultEntity {
	// 唯一标识ID。
	private String id;
	
	/*
	 * ATM：考勤机打卡（指纹/人脸打卡）
		
		BEACON：IBeacon
		
		DING_ATM：钉钉考勤机（考勤机蓝牙打卡）
		
		USER：用户打卡
		
		BOSS：老板改签
		
		APPROVE：审批系统
		
		SYSTEM：考勤系统
		
		AUTO_CHECK：自动打卡
	 */
	private String sourceType;
	
	// 计算迟到和早退，基准时间
	private String baseCheckTime;
	
	// 实际打卡时间, 用户打卡时间的毫秒数。
	private String userCheckTime;
	
	// 关联的审批实例ID，当该字段非空时，表示打卡记录与请假、加班等审批有关。
	private String procInstId;
	
	// 关联的审批ID，当该字段非空时，表示打卡记录与请假、加班等审批有关。
	private Integer approveId;
	
	/*
	 * Normal：范围内
		
		Outside：范围外
		
		NotSigned：未打卡
	 */
	
	private String locationResult;
	
	
	/*
	 * Normal：正常
		
		Early：早退
		
		Late：迟到
		
		SeriousLate：严重迟到
		
		Absenteeism：旷工迟到
		
		NotSigned：未打卡
	 */
	private String timeResult;
	
	
	/*
	 * OnDuty：上班
		
		OffDuty：下班
	 */
	private String checkType;
	
	// 打卡人的UserID。
	
	private String userId;
	
	// 工作日。
	private String workDate;
	
	// 打卡记录ID。
	private Integer recordId;
	
	//	排班ID。
	private Long planId;
	
	// 考勤组ID。
	private Integer groupId;

	public String getId() {
		return id;
	}

	public void setPlanId(Long planId) {
		this.planId = planId;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getSourceType() {
		return sourceType;
	}

	public void setSourceType(String sourceType) {
		this.sourceType = sourceType;
	}

	public String getBaseCheckTime() {
		return baseCheckTime;
	}

	public void setBaseCheckTime(String baseCheckTime) {
		this.baseCheckTime = baseCheckTime;
	}

	public String getUserCheckTime() {
		return userCheckTime;
	}

	public void setUserCheckTime(String userCheckTime) {
		this.userCheckTime = userCheckTime;
	}

	public String getProcInstId() {
		return procInstId;
	}

	public void setProcInstId(String procInstId) {
		this.procInstId = procInstId;
	}

	public Integer getApproveId() {
		return approveId;
	}

	public void setApproveId(Integer approveId) {
		this.approveId = approveId;
	}

	@Override
	public String toString() {
		return "RecordResultEntity [id=" + id + ", sourceType=" + sourceType + ", baseCheckTime=" + baseCheckTime
				+ ", userCheckTime=" + userCheckTime + ", procInstId=" + procInstId + ", approveId=" + approveId
				+ ", locationResult=" + locationResult + ", timeResult=" + timeResult + ", checkType=" + checkType
				+ ", userId=" + userId + ", workDate=" + workDate + ", recordId=" + recordId + ", planId=" + planId
				+ ", groupId=" + groupId + "]";
	}

	public String getLocationResult() {
		return locationResult;
	}

	public void setLocationResult(String locationResult) {
		this.locationResult = locationResult;
	}

	public String getTimeResult() {
		return timeResult;
	}

	public void setTimeResult(String timeResult) {
		this.timeResult = timeResult;
	}

	public String getCheckType() {
		return checkType;
	}

	public void setCheckType(String checkType) {
		this.checkType = checkType;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getWorkDate() {
		return workDate;
	}

	public void setWorkDate(String workDate) {
		this.workDate = workDate;
	}

	public Integer getRecordId() {
		return recordId;
	}

	public void setRecordId(Integer recordId) {
		this.recordId = recordId;
	}



	public Integer getGroupId() {
		return groupId;
	}

	public void setGroupId(Integer groupId) {
		this.groupId = groupId;
	}
	
	
}
